// Multi-Agent 系统运行入口
import { MultiAgentOrchestrator } from "./multi-agent";

/**
 * 运行 Multi-Agent 演示
 */
async function runMultiAgentDemo() {
  // 创建 Multi-Agent 协调器
  const orchestrator = new MultiAgentOrchestrator({
    baseUrl: "http://192.168.31.159:11434",
    model: "llama3.1:latest",
    temperature: 0.7,
    maxRounds: 5,
  });

  // 测试任务列表
  const testTasks = [
    "请分析人工智能在医疗领域的应用前景",
    "计算 (10 + 20) * 3 的结果，并分析这个计算过程",
    "研究深度学习的发展历史，并预测未来趋势",
  ];

  // 选择一个任务运行（可以修改索引来测试不同任务）
  const taskIndex = 0;
  const task = testTasks[taskIndex];

  try {
    console.log("\n" + "=".repeat(60));
    console.log("Multi-Agent 协作系统演示");
    console.log("=".repeat(60));

    const result = await orchestrator.run(task);

    console.log("\n" + "=".repeat(60));
    console.log("执行完成");
    console.log("=".repeat(60));
    console.log(`\n总轮次: ${result.rounds}`);
    console.log(`参与 Agent 数: ${new Set(result.transcript.map(t => t.role)).size}`);
    console.log(`总交互次数: ${result.transcript.length}`);

  } catch (error) {
    console.error("\n❌ 运行出错:", error);
    if (error instanceof Error) {
      console.error("错误详情:", error.message);
      console.error("堆栈:", error.stack);
    }
  }
}

// 运行演示
runMultiAgentDemo().catch(console.error);
